package com.carlinfo.common.dao;

import java.util.List;
import java.util.Map;

import com.carlinfo.common.util.PageInfoUtil;

public interface IBaseDao<T>
{
	/**
	 * 保存一条记录
	 * @param t
	 * @return
	 */
	int saveOneDao(T t);
	
	/**
	 * 修改一条记录
	 * @param t
	 * @return
	 */
	int updateOneDao(T t);
	
	/**
	 * 删除一条记录
	 * @param condMap
	 * @return
	 */
	int deleteOneDao(Map<String, Object> condMap);
	
	/**
	 * 查询一条记录~需求:按照id查询
	 * ~按照name查询(name不能重复)
	 * @param condMap key:sql语句中的条件对应的形参;val:实参
	 * @return
	 */
	T selectOneDao(Map<String, Object> condMap);
	
	/**
	 * 查询多条记录;条件更是五花八门
	 * @param condMap key:sql语句中的条件对应的形参;val:实参
	 * @return
	 */
	List<T> selectListDao(PageInfoUtil pageInfoUtil, Map<String, Object> condMap);
	
	
}
